package com.eshop.modules.order.service.dto;

import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;

public class ProductDto implements Serializable
{
    @ApiModelProperty("产品图片")
    private String image;
    @ApiModelProperty("产品价格")
    private Double price;
    @ApiModelProperty("产品名称")
    private String storeName;
    @ApiModelProperty("产品属性信息")
    private ProductAttrDto attrInfo;
    
    public String getImage() {
        return this.image;
    }
    
    public Double getPrice() {
        return this.price;
    }
    
    public String getStoreName() {
        return this.storeName;
    }
    
    public ProductAttrDto getAttrInfo() {
        return this.attrInfo;
    }
    
    public void setImage(final String image) {
        this.image = image;
    }
    
    public void setPrice(final Double price) {
        this.price = price;
    }
    
    public void setStoreName(final String storeName) {
        this.storeName = storeName;
    }
    
    public void setAttrInfo(final ProductAttrDto attrInfo) {
        this.attrInfo = attrInfo;
    }
    
    @Override
    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof ProductDto)) {
            return false;
        }
        final ProductDto other = (ProductDto)o;
        if (!other.canEqual(this)) {
            return false;
        }
        final Object this$price = this.getPrice();
        final Object other$price = other.getPrice();
        Label_0065: {
            if (this$price == null) {
                if (other$price == null) {
                    break Label_0065;
                }
            }
            else if (this$price.equals(other$price)) {
                break Label_0065;
            }
            return false;
        }
        final Object this$image = this.getImage();
        final Object other$image = other.getImage();
        Label_0102: {
            if (this$image == null) {
                if (other$image == null) {
                    break Label_0102;
                }
            }
            else if (this$image.equals(other$image)) {
                break Label_0102;
            }
            return false;
        }
        final Object this$storeName = this.getStoreName();
        final Object other$storeName = other.getStoreName();
        Label_0139: {
            if (this$storeName == null) {
                if (other$storeName == null) {
                    break Label_0139;
                }
            }
            else if (this$storeName.equals(other$storeName)) {
                break Label_0139;
            }
            return false;
        }
        final Object this$attrInfo = this.getAttrInfo();
        final Object other$attrInfo = other.getAttrInfo();
        if (this$attrInfo == null) {
            if (other$attrInfo == null) {
                return true;
            }
        }
        else if (this$attrInfo.equals(other$attrInfo)) {
            return true;
        }
        return false;
    }
    
    protected boolean canEqual(final Object other) {
        return other instanceof ProductDto;
    }
    
    @Override
    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $price = this.getPrice();
        result = result * 59 + (($price == null) ? 43 : $price.hashCode());
        final Object $image = this.getImage();
        result = result * 59 + (($image == null) ? 43 : $image.hashCode());
        final Object $storeName = this.getStoreName();
        result = result * 59 + (($storeName == null) ? 43 : $storeName.hashCode());
        final Object $attrInfo = this.getAttrInfo();
        result = result * 59 + (($attrInfo == null) ? 43 : $attrInfo.hashCode());
        return result;
    }
    
    @Override
    public String toString() {
        return "ProductDto(image=" + this.getImage() + ", price=" + this.getPrice() + ", storeName=" + this.getStoreName() + ", attrInfo=" + this.getAttrInfo() + ")";
    }
}
